'''
author: 陈玉松
date: 2020年11月3日
version：v1
'''


'''
随机生成20个[1, 20] 的正整数，统计每个数字出现的次数，排序并降序输出次数最多的前三个数字及次数
'''

import random
nums_dict={}
for i in range(20):
    random_num=random.randint(1, 20)
   
   # 随机数如果没有出现在字典中则添加
    if random_num not in nums_dict:
        nums_dict[random_num]=1
    else:
        #如果字典中已经有了，则将计数+1
        nums_dict[random_num]= nums_dict[random_num] + 1
# 排序
sort_list=sorted(nums_dict.items(),reverse=True,key=lambda item:item[1])

#print('排序后的列表：%s' %sort_list)

# 打印次数最多的前三个数字及次数
for i in range(3):
    print(sort_list[i],end=' ')
    
# 完成的不错
